import Vue from 'vue'
import Vuex from 'vuex'
import { getItem, setItem } from '@/utils/storage.js'

Vue.use(Vuex)
// 存储为常量，防止写错，能存取容易出错
const TOKEN_KEY = 'HTTPHM'

export default new Vuex.Store({
  state: {
    // 定义一个容器，存储token和refresh token
    // 容器优点；响应式
    // 转为对象形式
    user: getItem(TOKEN_KEY)
  },
  mutations: {
    // user同步数据
    changeUser (state, data) {
      state.user = data
      // 防止刷新丢失，需要把数据备份到本地存储
      // 优点(持久化)
      setItem(TOKEN_KEY, (state.user))
    }
  },
  actions: {
  },
  modules: {
  }
})
